package com.dss.auto_deploy.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dss.auto_deploy.domain.AdmNginx;
import com.dss.auto_deploy.dto.AdmNginxAddDto;
import com.dss.auto_deploy.dto.AdmNginxPageDto;
import com.dss.auto_deploy.dto.AdmNginxUpdateDto;
import com.dss.auto_deploy.vo.AdmNginxVo;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
* @Description:nginxService
* @author dongshoushan
* @date 2022-10-30 16:40:19
*/
public interface IAdmNginxService  extends IService<AdmNginx> {
    /**
    * 新增nginx
    * @param admNginxAddDto
    * @return
    */
    int insert(AdmNginxAddDto admNginxAddDto);

    /**
    * 修改nginx
    * @param admNginxUpdateDto
    * @return
    */
    int update(AdmNginxUpdateDto admNginxUpdateDto);

    /**
    * 批量删除nginx
    * @param ids
    * @return
    */
    void deleteBatch(Long[] ids);

    /**
    * nginx查询
    * @param dto
    * @return List<AdmNginx>
    */
    Page<AdmNginxVo> list(AdmNginxPageDto dto) throws InterruptedException;

    List<AdmNginxVo> convert(List<AdmNginx> list) throws InterruptedException;

    void install(String ids, String tempPath, MultipartFile nginxFile);

    void restartService(String ids);
}
